/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.edu.uniandes.vehialpes.beans;

import co.edu.uniandes.vehialpes.entity.Taller;
import co.edu.uniandes.vehialpes.facades.TallerFacadeLocal;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;

/**
 *
 * @author Cquiroga
 */
@Stateless
public class listarTalleres implements listaTalleresLocal {

    @EJB
    private TallerFacadeLocal tallerFacade;
    
    @Override
    public List<Taller> listarTalleres() {
        
        List<Taller> talleresDisponibles = new ArrayList<Taller>();
        /*Taller t= new Taller();
        
        
        for (int i=0;i<100;i++){
            t.setId(Long.MIN_VALUE);
            t.setNombre("Taller "+i);
            t.setUbicacion("N "+i);
            t.setCalificacion(i);
            t.setCantidadVehiculosVendidos(i);
          
            
        }*/
        talleresDisponibles = tallerFacade.findAll();
        
       return talleresDisponibles;       
        
    }

    @Override
    public List<Taller> consultaTalleres(String ubicacion, int calificacion) {
        
        List<Taller> talleresConsulta = listarTalleres();
        List<Taller> talleresDisponibles = new ArrayList<Taller>();
        
        for(int i=0;i<talleresConsulta.size();i++){            
            if(ubicacion==null||calificacion == -1){
                return talleresConsulta;
            }else if(ubicacion == null && talleresConsulta.get(i).getCalificacion() == calificacion){
                talleresDisponibles.add(talleresConsulta.get(i));                        
            }else if(talleresConsulta.get(i).getUbicacion().equals(ubicacion) && calificacion == -1){
                talleresDisponibles.add(talleresConsulta.get(i));
            } else if(talleresConsulta.get(i).getUbicacion().equalsIgnoreCase(ubicacion)||talleresConsulta.get(i).getCalificacion() == calificacion){
                talleresDisponibles.add(talleresConsulta.get(i));
            }
        }
        
        return talleresDisponibles;
    }

    
}
